package com.hmusic.mymusic.dao;

import com.hmusic.mymusic.domain.Singer;
import com.hmusic.mymusic.domain.SongList;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

/**
 * 歌单dao层
 */
@Mapper
public interface SongListMapper {
    /**
     * 添加歌单
     */
     void insert(SongList songList);

    /**
     * 修改歌单
     */
    void update(SongList songList);

    /**
     * 删除歌单
     */
    void delete(String id);

    /**
     * 根据主键查询整个对象
     */
    SongList selectByPrimaryKey(String id);

    /**
     * 查询所有歌单
     */
    List<SongList> allSongList();

    /**
     * 根据歌单名模糊查询
     */
    List<SongList> likeTitle(String title);

    /**
     * 根据歌单名精确查询
     */
    List<SongList> songListOfName(String title);

    /**
     * 根据风格模糊查询
     */
    List<SongList> likeStyle(String style);

    /**
     * 计算歌曲数量
     */
    int songListCount();

    /**
     * 首页热门歌单
     * @return
     */
    List<SongList> hotSongList();

    /**
     * 点击量增加
     * @param id
     */
    void updateClick(String id);

}
